package com.bt.lms.ui.page.sys.study;

import com.bt.lms.entity.StudyCen;
import com.bt.lms.entity.page.Page;
import com.bt.lms.main.BotLmsApp;
import com.bt.lms.ui.page.common.PageLocation;
import com.bt.lms.ui.page.sys.page.paging.PagePaging;
import com.bt.lms.ui.vo.PageSkipInfo;
import javafx.event.ActionEvent;
import javafx.event.Event;
import javafx.event.EventHandler;
import javafx.scene.control.CheckBox;
import javafx.scene.layout.VBox;

import javax.swing.text.TableView;
import java.util.List;

/**
 * 专业列表界面
 * @author 徐大永
 */
public class PageMajorList extends VBox {

    //-----------------------界面
    /**
     * 定位
     */
    private PageLocation pageLocation;

    /**
     * 列表
     */
    private TableView tableView;

    /**
     * 分页
     */
    private PagePaging pagePaging;

    //------------------数据
    /**
     * 分页模型
     */
    private Page<StudyCen> page;

    /**
     * 选框合集
     */
    private List<CheckBox> checkBoxes;

    /**
     * 当前学习中心
     */
    private StudyCen studyCen;

    //--------------------------事件
    /**
     * 确认
     */
    private ConfirmBtnAction confirmBtnAction;

    /**
     * 分页
     */
    private PageAction pageAction;

    /**
     * 返回
     */
    private CancelBtnAction cancelBtnAction;

    //---------------------其他
    /**
     * 界面跳转信息
     */
    private final PageSkipInfo pageSkipInfo;

    /**
     * 构建界面
     * @param pageSkipInfo 界面跳转信息
     * @param studyCen 学习中心信息
     * @param page 分页模型
     */
    public PageMajorList(PageSkipInfo pageSkipInfo, StudyCen studyCen, Page<StudyCen> page) {

        //维护
        this.pageSkipInfo = pageSkipInfo;
        this.studyCen = studyCen;

        //大小
        this.setPrefWidth(BotLmsApp.PER_WIGHT);
        this.setPrefHeight(BotLmsApp.HEIGHT);

        //布局
        this.setSpacing(20);

        //界面初始化
        uiInit();

        //加载数据并渲染
        loadAndRenderPage();
    }

    /**
     * 界面初始化
     */
    private void uiInit() {

        //定位
        new PageLocation("系统管理","学习中心管理","为"+getStudyCen().getName()+"设置专业");

        //说明

        //列表

        //分页

        //操作


    }

    /**
     * 加载数据并渲染
     */
    private void loadAndRenderPage() {
    }

    /**
     * 确认按钮事件
     */
    private static class ConfirmBtnAction implements EventHandler<ActionEvent> {

        /**
         * 所属界面
         */
        private PageMajorList pageMajorList;

        @Override
        public void handle(ActionEvent event) {

        }
    }

    /**
     * 分页事件
     */
    private static class PageAction implements EventHandler{

        /**
         * 所属界面
         */
        private PageMajorList pageMajorList;

        @Override
        public void handle(Event event) {

        }
    }

    /**
     * 返回按钮事件
     */
    private static class CancelBtnAction  implements EventHandler<ActionEvent>{

        /**
         * 所属界面
         */
        private PageMajorList pageMajorList;

        @Override
        public void handle(ActionEvent event) {

        }
    }

    public PageLocation getPageLocation() {
        return pageLocation;
    }

    public TableView getTableView() {
        return tableView;
    }

    public PagePaging getPagePaging() {
        return pagePaging;
    }

    public Page<StudyCen> getPage() {
        return page;
    }

    public List<CheckBox> getCheckBoxes() {
        return checkBoxes;
    }

    public ConfirmBtnAction getConfirmBtnAction() {
        return confirmBtnAction;
    }

    public PageAction getPageAction() {
        return pageAction;
    }

    public CancelBtnAction getCancelBtnAction() {
        return cancelBtnAction;
    }

    public StudyCen getStudyCen() {
        return studyCen;
    }

    public PageSkipInfo getPageSkipInfo() {
        return pageSkipInfo;
    }





}
